#ifndef _YGWINDOWWIN32_H_
#define _YGWINDOWWIN32_H_

#include "YGWindow.h"

namespace YoghurtGum
{

	class WindowWin32 : public Window
	{
	
	public:
	
		WindowWin32();
		~WindowWin32();
	
		void Init();
		bool Update();
		bool PreRender();
		bool PostRender();
		bool Close();

		void* GetProperty(const char* a_Name);

		void SetName(const char* a_Name);

	protected:

		static LRESULT WINAPI Messages(HWND a_Handle, UINT a_Message, WPARAM wParam, LPARAM lParam);

		static HINSTANCE     s_Instance;
		static WNDCLASS      s_WindowClass;
		static HWND          s_Handle;
		static PAINTSTRUCT   s_Canvas;
		static RECT          s_Size;
		static MSG           s_MSG;

		HWND m_Handle;
	
	}; // class WindowWin32

}; // namespace YoghurtGum
	
#endif